Skip to content

Conversation

@justinorringer
Copy link
Contributor

Currently the reverse proxy, whenever each frontend appears, tries to create a new container to compare with the current one, then cleans up the old. Whenever the operator rolls out for example, there are a lot of comparisons.

Instead we should do it more like this comparing fields.

In the future, we should make an utility to do these comparisons and manage if the pod should be restarted or not...

@Hyperkid123
Copy link
Contributor

Hyperkid123 commented Oct 1, 2025

Uu, this seems like a lot of code to deploy a pod. Did we consider deploying the reverse proxy directly to the frontend namespace via "classic" means? I feel like we are writing a lot of operator code that could be replaced by a fairly small deployment config. Unless there is a specific reason why we can't?

for _, change := range changes {
r.Log.Info("Applying container change", "field", change.Field, "reason", change.Reason)

switch change.Field {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@justinorringer FWIW there is no default case or error handling if the change requested is not recognized.


envVars := []v1.EnvVar{
{Name: "SERVER_PORT", Value: strconv.Itoa(ReverseProxyPort)},
{Name: "MINIO_UPSTREAM_URL", Value: minioUpstreamURL},
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should probably rename this VAR at some point in the RP. Seems odd to use in prod.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants